home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 26 / Cream of the Crop 26.iso / os2 / sockd.zip / install.doc < prev    next >
Text File  |  1997-05-18  |  33KB  |  865 lines

  1.  Installation instructions and documentation (from sockd help)
  2.  _____________________________________________________________
  3.  
  4.  
  5.    The multi-threaded socks server for OS/2 enables to build a
  6.   firewall  gateway on an OS/2 (Warp) system. The objective is
  7.   just to interconnect small TCP/IP PC  Lan  with  the  public
  8.   network (through a "Service Provider").
  9.  
  10.     Like  in  all  "standard"  sockd server, the protection is
  11.   build in a configuration file (sockd.cfg in the  ETC  direc-
  12.   tory).
  13.  
  14.     Access  is  controlled with two statements "deny" or "per-
  15.   mit".  Origin address and subnet mask  and  destination  ad-
  16.   dress  and  mask  can  be  checked  for  a  destination port
  17.   number...
  18.  
  19.   For applications using socks version 4 protocol the support
  20.    is only for TCP application due to the protocol stack.
  21.  
  22.    The current version has  support  for  three  LAN  adapters
  23.   (LAN0,  LAN1  and  LAN2), and two SLIP or PPP adapters (sl0,
  24.   sl1, ppp0 and ppp1).  One of the "serial"  adapters  can  be
  25.   configured  in  "auto-dial"  to  give access to the Internet
  26.   through a "network" provider.
  27.  
  28.    The current version supports SOCKS Version 4  and  5.    In
  29.   SOCKS   version  5,  only  NO  AUTHENTICATION  REQUIRED  and
  30.   USERNAME/PASSWORD authentication methods are supported.  The
  31.   GSSAPI support is NOT implemented.
  32.  
  33.    In V5 only support for IP V4 addresses is provided not V6.
  34.    DNS names are evidendly supported.
  35.  
  36.     To  be used, a correct support of the TCP/IP names must be
  37.   implemented in
  38.    the way the "client" stations can convert external names in
  39.   IP addresses.
  40.    This restriction can be modified with SOCKS Version 5 where
  41.   DNS names have
  42.    to be resolved only on the SOCKD station.
  43.  
  44.    To provide the correct "names" support in Socks V4, we  use
  45.   the DNS kit of TCP/IP V2.0
  46.    on  the  same  workstation  as  "sockD".  In  this way this
  47.   "nameD" server can provide
  48.    caching mechanism to the external (and internal) name serv-
  49.   ers.
  50.    We used also the DDNS kit of Warp Server in a similar  con-
  51.   figuration.
  52.  
  53.    In Socks V5, only a resolv file pointing to a "public" name
  54.   server  and  an "hosts" file to traduce "internal" names are
  55.   required. The usage of a real "caching" name server  is  NOT
  56.   mandatory.  The  customization of the "SockD" server is eas-
  57.   ier.
  58.  
  59.   The support of UDP associated of V5 is a little bit modified
  60.   to add support for a "remote" ping command when the destina-
  61.   tion  port  is "1".  In this case sockd opens a "raw" socket
  62.   with protocol "icmp" to ping the external host and  communi-
  63.   cates with the standard UDP Associated protocol to the "cli-
  64.   ent" host.
  65.  
  66.   AUTO-DIAL FACILITY.
  67.   ___________________
  68.  
  69.   You  need to customize first the access to your network pro-
  70.   vider.
  71.  
  72.   SockD was only tested with IBM Global Network. When the  ac-
  73.   cess is working with the "dialer.exe", you have to customize
  74.   two  "cmd" files one to get the access and the second one to
  75.   close it.
  76.  
  77.   This facility is only supported on  one  adapter  sl0,  sl1,
  78.   ppp0 or ppp1.  It was only tested on sl0.
  79.  
  80.   To  check if the connection is OK, sockd uses the "flags" of
  81.   the   adapter   status.   When   the    sl0    adapter    is
  82.   "<UP,POINTTOPOINT>",     the     flags    are    "811"    or
  83.   "<UP,POINTTOPOINT,RUNNING>" ("851")...
  84.  
  85.   Sockd reads normally a sockd.cfg and sockd.rte files in  the
  86.   ETC  directory.  These files are the socks configuration. In
  87.   auto-dial mode, sockd tries to build an "automatic"  config.
  88.   It should be OK for the first tests.  If you want to look at
  89.   this  default  config,  you  have just to read the sockd.log
  90.   file (in the sockd directory) after stopping sockd.
  91.  
  92.   By  sample  I  used  this  sockdial.cmd  whith   a   correct
  93.   userid/password and account to start the connection.
  94.  
  95.     /************************************************/
  96.     /*                                              */
  97.     /* sockdial.cmd :  to start the slip connection */
  98.     /*                                              */
  99.     /************************************************/
  100.     'start dialer account userid password -d'
  101.  
  102.   And  this sockclos.cmd to stop the connection after the "de-
  103.   lay" without session is expired.
  104.  
  105.     /***********************************************/
  106.     /*                                             */
  107.     /* sockclos.cmd :  to stop the slip connection */
  108.     /*                                             */
  109.     /***********************************************/
  110.     'dialer -c'
  111.  
  112.   These two cmd MUST be put in  a  subdirectory  in  the  PATH
  113.   statement (I used \TCPIP\BIN).
  114.  
  115.   Evidendly  you  have  to  enable  the  "auto-dial"  function
  116.   through the "dial-up" option of the "config" menu (and setup
  117.   your command names and the "delay" time). Then you  have  to
  118.   stop/start sockd.
  119.  
  120.   An  other  method consists in starting directly sockd with a
  121.   parameter:
  122.  
  123.       start sockd -dsl0
  124.  
  125.       where:  sl0  is the auto-dial adapter
  126.  
  127.   In  this case you have to keep the default for other parame-
  128.   ters:  "sockdial.cmd", "sockclos.cmd" and 5 minutes  of  de-
  129.   lay.
  130.  
  131.   The delay time should be shorter than the "delay" set in the
  132.   "dialer" configuration to keep the control of the connection
  133.   in "sockd".
  134.  
  135.  
  136.   SOCKD.CFG
  137.   _________
  138.  
  139.    The configuration files are saved in the ETC directory.
  140.  
  141.     deny   0.0.0.0 0.0.0.0 9.0.0.0 255.0.0.0 gt 0
  142.     permit 9.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 ge 1024
  143.     permit 9.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 eq 21
  144.     permit 9.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 eq 20
  145.     permit *=PhilG,Test 9.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 eq 23
  146.     permit 9.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 eq 70
  147.     permit 9.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 eq 80
  148.  
  149.     A  list of userids can be used in addition of IP addresses
  150.   on the "permit" statement.  They  are  case  sensitive.  The
  151.   value  sent  from  the OS/2 Warp station comes from the USER
  152.   variable set in the "config.sys" in SOCKS V4.
  153.  
  154.    On the time being no checking of  "password"  is  performed
  155.   (through identd).
  156.  
  157.   In   SOCKS   V5,   the   userid   used   in  userid/password
  158.   authentication is checked with the userid list in the permit
  159.   statement if *= field is set.
  160.  
  161.    Good practice specifies a first statement to denies all ex-
  162.   ternal accesses to your "private" network (all ports) with:
  163.  
  164.    "deny 0.0.0.0 0.0.0.0 nnn.nnn.nnn.nnn mmm.mmm.mmm.mmm gt 0"
  165.    where nnn is your network number and mmm the mask.
  166.  
  167.    then you can permit all stations from your network  to  ac-
  168.   cess all TCP applications through the socks gateway with:
  169.  
  170.   "permit  nnn.nnn.nnn.nnn  mmm.mmm.mmm.mmm 0.0.0.0 0.0.0.0 gt
  171.   0"
  172.  
  173.   "proxy" statements can be added if you require to  intercon-
  174.   nect sockd servers. The syntax is like :
  175.  
  176.   "proxy     IP_addr     port_nb     subnet_nb     subnet_mask
  177.   [site_certificate] "
  178.  
  179.   Where :
  180.     IP_addr is the IP address of next proxy server
  181.     port_nb is the port number (1080 by default) of this proxy server
  182.     subnet_nb is the destination subnet we can access through this proxy
  183.     subnet_mask the destination subnet mask
  184.     site_certificate  the  file  to use for authentication and encryption
  185.                        (not yet supported)
  186.  
  187.   SOCKD.PRO
  188.   _________
  189.  
  190.     SOCKD  uses also a profile file (sockd.pro) in the ETC di-
  191.   rectory to save the number of sessions set, server port  nb,
  192.   the window position, the level of logging used ("Full", "all
  193.   Sessions",  "only  errors and sessions refused (Minimum)" or
  194.   "No logging") and the font used on main window.
  195.  
  196.    In the second line of this file, we have  the  "auto  dial"
  197.   parameters:
  198.    is  this  facility  enabled (Y or N), the dial command, the
  199.   hangup command,
  200.    and the "short hold mode" delay.
  201.  
  202.    In addition a "TCP" time-out and a "UDP" time-out (in  sec-
  203.   onds) are
  204.    also set. These permit to "tune" the delay sockd is waiting
  205.   for the next
  206.    transaction before considering the session is lost.
  207.    If these parameters are too short sockd is cutting the ses-
  208.   sion during a
  209.    normal  "wait"  time.  If  they are too long, some "client"
  210.   threads can be
  211.    blocked and are not available for "new" sessions.
  212.  
  213.    The defaults are respectively 20 minutes  for  TCP  and  50
  214.   seconds for UDP
  215.    applications. TCP is really using a "session". In UDP there
  216.   is no real
  217.    session.  The communication is never really closed. The UDP
  218.   time-out is used
  219.    to standardly close this communication.  SockD  was  tested
  220.   with Real-Audio
  221.    UDP  application  and archie as UDP associate applications.
  222.   The default of
  223.    50 seconds was enough  to  use  both  applications  with  a
  224.   dial-up connection.
  225.    The default of 20 minutes for TCP applications was set big-
  226.   ger than the
  227.    standard  FTP  time-out  (15 minutes). It is NOT enough for
  228.   "permanent"
  229.    telnet sessions.
  230.  
  231.   A third line contains info on log archiving : yes or no, de-
  232.   lay in hours or days, delay value, maximum number  of  files
  233.   to  archive.  The fifth parm in this line permits to support
  234.   only socks V5 userid/password authentication if a userid  is
  235.   set  on a permit statement. In Socks V4 there is no password
  236.   checking.  Normally sockd is giving the same process  to  V4
  237.   as V5. Enabling this option obliges to use a password in ad-
  238.   dition to the userid.
  239.  
  240.    This file is created automatically by sockd.exe
  241.  
  242.   SOCKD.RTE
  243.   _________
  244.  
  245.     Another  configuration  file  (sockd.rte)  is required for
  246.   SOCKS_BIND in  the  ETC  directory  describing  the  gateway
  247.   adapters  and  IP addresses.   Most of the applications (Web
  248.   Explorer, Rtelnet, ...) use only SOCKS_CONNECT.  That's  the
  249.   reason  why  I  put "sockd.rte" as optional....   But if you
  250.   want to use Rftp you need the SOCKS_BIND  support  and  then
  251.   sockd.rte.
  252.  
  253.    It is a list of the local adapter addresses and the neworks
  254.   you can reach through these... These definitions are used in
  255.   sequence  for  testing an address.   Thus it seems better to
  256.   put the more restrictive definitions first (describing  pri-
  257.   vate  network  access)  and  the  "public  network"  adapter
  258.   finally (giving access to world).
  259.  
  260.    By sample :
  261.  
  262.     9.36.69.41    9.36.69.32 255.255.255.224
  263.     9.132.89.238  0.0.0.0    0.0.0.0
  264.  
  265.   If you plan to use the auto-dial facility avoid to set rout-
  266.   ing for the dial-up adapter. If  no  route  file  is  found,
  267.   sockd  builds  one  with  your LAN adapters giving access to
  268.   their local subnets and put a last  dynamic  entry  for  the
  269.   switched adapter giving access to world (0.0.0.0).
  270.  
  271.   You  can want to have other subnets accessible through fixed
  272.   (LAN) adapters.  For that you must define a sockd.rte with a
  273.   line per subnet and setting in first parameter the local  IP
  274.   address  giving  access  to  it. Sockd 'll add dynamically a
  275.   last entry for the switched adapter giving access to 0.0.0.0
  276.  
  277.    By sample :
  278.  
  279.     9.36.71.9     9.36.71.0   255.255.255.0
  280.     9.132.89.238  9.0.0.0     255.0.0.0
  281.     9.132.89.238  198.74.69.0 255.255.255.0
  282.  
  283.   SOCKD.USR
  284.   _________
  285.  
  286.   This  file  is  in  the  ETC directory   for Socks version 5
  287.   userid/password authentication.  On the time being,  no  en-
  288.   cryption  technic  is  used on this confidential dataset.  A
  289.   userid as a password can theoretically use 256 characters. I
  290.   think in our test implementation it is limited to  255  (due
  291.   to the end of string character).
  292.  
  293.    By sample :
  294.  
  295.     userid01 password01
  296.     userid02 password02
  297.  
  298.  
  299.   UTILISATION:
  300.   ____________
  301.  
  302.     Start  sockd  without  any parameter or with some of these
  303.   options:
  304.  
  305.   ⌐   "-c" option: The number of concurrent clients is  32  by
  306.       default.    It can be changed at startup with the -c pa-
  307.       rameter or by modifying the sockd.pro profile file  with
  308.       the  menu option.  By sample :"sockd -c64" to support 64
  309.       simultaneous clients. Note there is NO space between  -c
  310.       and  the value. This number should be between 8 and 255.
  311.       Each client uses one thread (in  addition  to  the  base
  312.       sockd thread).
  313.  
  314.   ⌐   "-l"  option: to suppress logging (sockd.log file in the
  315.       current directory)
  316.  
  317.   ⌐   "-i" option: to start iconized .
  318.  
  319.   ⌐   "-d" option: to setup an auto-dial  adapter,  by  sample
  320.       "-dsl0".
  321.  
  322.   ⌐   "-p"  option:  by  default sockd uses the port 1080. You
  323.       can change it starting "sockd -p2080" by sample.
  324.  
  325.    If you want to use more than one option, specify  different
  326.   parameters:  "start sockd -c48 -p2080 -i".
  327.  
  328.     The  frame  forwarding  MUST be disabled (with the "ipgate
  329.   off" command or through MPTS customization) to  protect  the
  330.   access to your "internal" network.
  331.  
  332.     The  "socks" support is required to run (and use) applica-
  333.   tions through gateway.  (see SOCKS FORUM) or a  Web  Browser
  334.   with "socks" support (like Web Explorer for
  335.    OS/2).
  336.  
  337.   SOCKD MENU
  338.   __________
  339.  
  340.   ⌐   "Config": create, modify or simply check your configura-
  341.       tion
  342.  
  343.  
  344.       ₧   "edit":  to  create  or  modify  "line  by line" the
  345.           sockd.cfg in ETC directory
  346.  
  347.       ₧   "proxy": to define proxy  servers  and  the  subnets
  348.           they are giving access.
  349.  
  350.       ₧   "view":  to  review  the configuration in memory and
  351.           eventualy change it
  352.                 with the standard  MLE  (Multiple  Line  Entry
  353.           field) keyboard manipulation.
  354.                 (select  text with mouse button 1 or Shift key
  355.           and move the cursor,
  356.                 then   cut,   copy   and   paste   text   with
  357.           Ctrl+Delete, Shift+Delete and Shift+Insert)
  358.  
  359.       ₧   "profile":  to  change the maximum number of concur-
  360.           rent sessions,
  361.                 the server port number or the logging level.
  362.  
  363.       ₧   "route": to configure the sockd.rte file in ETC  di-
  364.           rectory.
  365.  
  366.       ₧   "save  conf":  to  save the sockd.cfg from memory to
  367.           ETC directory
  368.  
  369.       ₧   "userid":    for    Socks     V5     Userid/Password
  370.           authentication method
  371.  
  372.       ₧   "dial-up": to customize auto-dial facility
  373.  
  374.       ₧   "font": to select the font used in the main window.
  375.  
  376.   ⌐   "reset": If you want to activate a change, a new profile
  377.       or config
  378.  
  379.       ₧   "server": to stop/restart the server
  380.  
  381.       ₧   "log  file":  to clean the log file when reports are
  382.           too long.
  383.  
  384.   ⌐   "Report":
  385.  
  386.  
  387.       ₧   "accepted":  to  check  all  sessions  through  this
  388.           server
  389.  
  390.       ₧   "denied":  to  check  all  demands  rejected  by the
  391.           server.
  392.  
  393.       ₧   "connect": to read the dial-up  connection  time  in
  394.           auto-dial mode.
  395.  
  396.   ⌐   "Help": to read this help file.
  397.  
  398.   ⌐   "Exit": to save the "profile" file and exit.
  399.  
  400.  
  401.  
  402. DNS SUPPORT
  403. ___________
  404.  
  405.   HOW TO SETUP A NAME SERVER
  406.   __________________________
  407.  
  408.     To  solve the V4 "name" problem, I put the DNS kit (at CSD
  409.   UN60004 level) on the PS/VP. This name server should be cus-
  410.   tomized with caching to the external name server(s)  and  to
  411.   internal  domain  name server.   On the "client" station the
  412.   resolv2 file points to the socks gateway address as the name
  413.   server (the DNS running on the sockd station can be the only
  414.   name server on this small subnet).
  415.  
  416.    Here after the configuration files used during  our  tests,
  417.   where:
  418.  
  419.   ⌐    Where test.benelux.ibm.com (9.36.71.0) is the 'private'
  420.       domain
  421.  
  422.   ⌐     ztmaixn1.benelux.ibm.com  (9.132.56.2) is the external
  423.       name server for the
  424.         ibm.com domain and ns01.ny.us.ibm.net (165.87.194.244)
  425.       is the external
  426.         DNS server.
  427.  
  428.   ⌐     The  socks  gateway  is  using  9.132.89.238  on   the
  429.       "ibm.com" adapter and
  430.        9.36.71.9 on the "secure" side (philg.benelux.ibm.com).
  431.  
  432.   ⌐    Tests were performed from testuser.test.benelux.ibm.com
  433.       (9.36.71.10).
  434.  
  435.   ⌐   All  "external"  sessions were performed through the sl0
  436.       adapter and a connection to IBM Global Network as  "Ser-
  437.       vice" provider.
  438.  
  439.   In  fact,  on  a  small  LAN with just a few PCs connected a
  440.   "hosts" file must be enough to succeed with  DNS  conversion
  441.   in Socks V5.
  442.  
  443.     hosts file in ETC directory
  444.  
  445.     9.132.89.238      bedb238.benelux.ibm.com
  446.     9.36.71.9         bedb238.philg.benelux.ibm.com
  447.     9.36.71.10        testuser.philg.benelux.ibm.com
  448.     165.87.194.244    ns01.ny.us.ibm.net
  449.     128.123.35.151    hobbes.nmsu.edu
  450.     206.101.97.101    www.lycos.com
  451.     205.216.146.70    www.yahoo.com
  452.  
  453.   In Socks V4, you can perform the first sockd tests just with
  454.   a similar hosts file. But quickly, you should be blocked and
  455.   due  to  the  protocol you need to start a "named" server on
  456.   your sockd gateway. You need then a "resolv2" file  on  your
  457.   LAN attached PC pointing to your named server.
  458.  
  459.   In  any case keep also an "hosts" file on your sockd PC, be-
  460.   cause the code uses a "gethostbyaddr()"  macro  to  get  the
  461.   "hostname"  of  the workstation.  Sometimes the named server
  462.   doesn't answer and you have to start sockd before named. You
  463.   need then the "hosts" file to get a name.
  464.  
  465.   DNS KIT OF TCP/IP V2
  466.   ____________________
  467.  
  468.   named.bt
  469.   ________
  470.  
  471.     ;
  472.     ; NAMED.BT file for name server configuration.
  473.     ;
  474.     ; type       domain                      source file or host
  475.     ;
  476.     domain   philg.benelux.ibm.com
  477.     cache    .                          d&colon.\\tcpip\\etc\\namedb\\named.ca
  478.     primary  philg.benelux.ibm.com      d&colon.\\tcpip\\etc\\namedb\\named.dom
  479.     primary  71.36.9.in-addr.arpa       d&colon.\\tcpip\\etc\\namedb\\named.rev
  480.     ;
  481.     ;
  482.     domain   benelux.ibm.com
  483.     primary  ztmaixn1.benelux.ibm.com  9.132.56.2
  484.     primary  9.in-addr.arpa            9.132.56.2
  485.     ;
  486.     domain   ibm.net
  487.     primary  ns01.ny.us.ibm.net        165.87.194.244
  488.     primary  .in-addr.arpa             165.87.194.244
  489.     ;
  490.  
  491.   named.ca
  492.   ________
  493.  
  494.     ;
  495.     ; define parent(root) domain nameserver (Note trailing dot)
  496.     ;
  497.     philg.benelux.ibm.com.        99999999  IN  NS  bedb238.benelux.ibm.com.
  498.     71.36.9.in-addr.arpa.         99999999  IN  NS  bedb238.benelux.ibm.com.
  499.     benelux.ibm.com.              99999999  IN  NS  ztmaixn1.benelux.ibm.com.
  500.     ibm.com.                      99999999  IN  NS  ztmaixn1.benelux.ibm.com.
  501.     9.                            99999999  IN  NS  ztmaixn1.benelux.ibm.com.
  502.     9.in-addr.arpa.               99999999  IN  NS  ztmaixn1.benelux.ibm.com.
  503.     in-addr.arpa.                 99999999  IN  NS  ns01.ny.us.net.com.
  504.     ;
  505.     ; address of domain nameservers
  506.     ;
  507.     bedb238.philg.benelux.ibm.com.  99999999  IN  A   9.36.71.9
  508.     bedb238.benelux.ibm.com.        99999999  IN  A   9.132.89.238
  509.     ztmaixn1.benelux.ibm.com.       99999999  IN  A   9.132.56.2
  510.     beda002.benelux.ibm.com.        99999999  IN  A   9.132.88.2
  511.     ns01.ny.us.net.com.             99999999  IN  A   165.87.194.244
  512.     ;
  513.  
  514.   Where  ns01.ny.us.net.com is the name server of the Internet
  515.   provider...
  516.  
  517.   named.dom
  518.   _________
  519.  
  520.     ;
  521.     ;********************************
  522.     ;*  Start of Authority Records  *
  523.     ;********************************
  524.     ;
  525.     @ IN SOA  bedb238.philg.benelux.ibm.com.  bedb238.philg.benelux.ibm.com. (
  526.             93052601 ; Serial number for this data (yymmdd##)
  527.             86400    ; Refresh value for secondary name servers
  528.             300      ; Retry value for secondary name servers
  529.             864000   ; Expire value for secondary name servers
  530.             3600 )   ; Minimum TTL value
  531.     ;
  532.     @      IN  NS   bedb238.philg.benelux.ibm.com.
  533.     ibm.com.   IN  NS   bedb238.philg.benelux.ibm.com.
  534.     ibm.com.   IN  NS   ztmaixn1.benelux.ibm.com.
  535.     com.   IN  NS   bedb238.philg.benelux.ibm.com.
  536.     com.   IN  NS   ns01.ny.us.ibm.net
  537.     edu.   IN  NS   ns01.ny.us.ibm.net
  538.     be.    IN  NS   ns01.ny.us.ibm.net
  539.     ;
  540.     ;********************************
  541.     ;*  Domain Address Information  *
  542.     ;********************************
  543.     ;
  544.     bedb238                    86400  IN  A      9.36.71.9
  545.                                       IN  HINFO  IBM-PS/2 OS/2 3.0
  546.     ;
  547.     testuser                   86400  IN  A      9.36.71.10
  548.                                       IN  HINFO  IBM-PS/2 OS/2 3.0
  549.     ;
  550.     bedb238.benelux.ibm.com.   86400  IN  A      9.132.89.238
  551.     bedb237.benelux.ibm.com.   86400  IN  A      9.132.89.237
  552.     ns01.ny.us.ibm.net         86400  IN  A      165.87.194.244
  553.     ztmaixn1.benelux.ibm.com   86400  IN  A      9.132.56.2
  554.     w3.almaden.ibm.com.        86400  IN  A      129.33.24.62
  555.     w3.pe.au.ibm.com.          86400  IN  A      9.8.32.2
  556.     w3.austin.ibm.com.         86400  IN  A      9.3.246.8
  557.     w3.bocaraton.ibm.com.      86400  IN  A      9.83.4.179
  558.     w3.portsmouth.uk.ibm.com.  86400  IN  A      9.180.145.185
  559.     w3.hursley.ibm.com.        86400  IN  A      9.20.2.34
  560.     w3.issc.ibm.com.           86400  IN  A      9.242.89.217
  561.     isscw3.raleigh.ibm.com.    86400  IN  A      9.67.1.114
  562.     w3nhd.raleigh.ibm.com.     86400  IN  A      9.67.195.102
  563.     netstd.raleigh.ibm.com.    86400  IN  A      9.67.1.114
  564.     w3.raleigh.ibm.com.        86400  IN  A      9.67.4.22
  565.     www.tcp.raleigh.ibm.com.   86400  IN  A      9.67.106.6
  566.     www.lycos.com.             86400  IN  A      206.101.97.101
  567.     www.yahoo.com.             86400  IN  A      205.216.146.70
  568.  
  569.   The  translation  of  www.lycos.com,  www.yahoo.com, ... Are
  570.   there to have a method to start a dial-up connection without
  571.   the external DNS server.   These name translations  are  re-
  572.   quired for Socks V4 auto-dial process...
  573.   You must setup there the addresses of the WWW servers set in
  574.   the  quicklist  of  the end-users connected on the local LAN
  575.   while Web explorer is not supporting V5.
  576.  
  577.   named.rev
  578.   _________
  579.  
  580.     ;
  581.     ;********************************
  582.     ;*  Start of Authority Records  *
  583.     ;********************************
  584.     ;
  585.     71.36.9.in-addr.arpa. IN  SOA   bedb238.philg.benelux.ibm.com. (
  586.             93052601 ; Serial number for this data (yymmdd##)
  587.             86400    ; Refresh value for secondary name servers
  588.             300      ; Retry value for secondary name servers
  589.             864000   ; Expire value for secondary name servers
  590.             3600 )   ; Minimum TTL value
  591.  
  592.     71.36.9.in-addr.arpa.  IN  NS   bedb238.philg.benelux.ibm.com.
  593.     ;
  594.     9              IN  PTR   bedb238.philg.benelux.ibm.com.
  595.     10             IN  PTR   testuser.philg.benelux.ibm.com.
  596.     237.89.132.9.in-addr.arpa.  IN  PTR   bedb237.benelux.ibm.com.
  597.     238.89.132.9.in-addr.arpa.  IN  PTR   bedb238.benelux.ibm.com.
  598.     101.97.101.206.in-addr.arpa.  IN  PTR  www.lycos.com.
  599.     70.146.216.205.in-addr.arpa.  IN  PTR  www.yahoo.com.
  600.  
  601.   The  translation  of  bedb238.benelux.ibm.com is required to
  602.   start  sockd  when  the  name  server  is  running,  because
  603.   9.132.89.238 is the IP address of the "lan0" adapter.
  604.   SockD uses a "gethostbyaddr()" macro to get the host-name of
  605.   the  system  where it is running. If the name server can not
  606.   give it, sockd is blocked during start-up...
  607.  
  608.   DDNS KIT OF WARP SERVER
  609.   _______________________
  610.  
  611.   In the \MPTN\ETC\NAMEDB  directory  we  used  the  following
  612.   config files.
  613.  
  614.   named.bt
  615.   ________
  616.  
  617.  
  618.    DNS support                                              18
  619.  
  620.  
  621.     ;
  622.     ; NAMED.BT file for name server configuration.
  623.     ;
  624.     ; type       domain                  source file or host
  625.     ;
  626.     domain   philg.benelux.ibm.com
  627.     primary  philg.benelux.ibm.com c&colon.\\mptn\\etc\\namedb\\named.dom presecured nokeytosec
  628.     primary  71.36.9.in-addr.arpa  c&colon.\\mptn\\etc\\namedb\\named.rev presecured nokeytosec
  629.     ;
  630.     ;
  631.     cache    .              c&colon.\\mptn\\etc\\namedb\\named.ca  presecured nokeytosec
  632.     ;
  633.  
  634.   named.dom
  635.   _________
  636.  
  637.     ;
  638.     ;********************************
  639.     ;*  Start of Authority Records  *
  640.     ;********************************
  641.     ;
  642.     @   IN  SOA        bedb238.philg.benelux.ibm.com. (
  643.             96090101 ; Serial number for this data (yymmdd##)
  644.             86400    ; Refresh value for secondary name servers
  645.             300      ; Retry value for secondary name servers
  646.             864000   ; Expire value for secondary name servers
  647.             3600 )   ; Minimum TTL value
  648.     ;
  649.     @      IN  NS   bedb238.philg.benelux.ibm.com.
  650.     ;
  651.     ;********************************
  652.     ;*  Domain Address Information  *
  653.     ;********************************
  654.     ;
  655.     bedb238                    86400  IN  A      9.36.71.9
  656.                                       IN  HINFO  IBM-PS/2 OS/2 3.0
  657.     ;
  658.     testuser                   86400  IN  A      9.36.71.10
  659.                                       IN  HINFO  IBM-PS/2 OS/2 3.0
  660.     ;
  661.     ns01.ny.us.ibm.net         86400  IN  A      165.87.194.244
  662.     www.lycos.com.             86400  IN  A      206.101.97.101
  663.     www.yahoo.com.             86400  IN  A      205.216.146.70
  664.  
  665.   named.rev
  666.   _________
  667.  
  668.     ;
  669.     ;********************************
  670.     ;*  Start of Authority Records  *
  671.     ;********************************
  672.     ;
  673.     71.36.9.in-addr.arpa. IN  SOA  bedb238.philg.benelux.ibm.com. (
  674.             93052601 ; Serial number for this data (yymmdd##)
  675.             86400    ; Refresh value for secondary name servers
  676.             300      ; Retry value for secondary name servers
  677.             864000   ; Expire value for secondary name servers
  678.             3600 )   ; Minimum TTL value
  679.  
  680.     71.36.9.in-addr.arpa.  IN  NS   bedb238.philg.benelux.ibm.com.
  681.     ;
  682.     9.71.36.9.in-addr.arpa.       IN  PTR   bedb238.philg.benelux.ibm.com.
  683.     10.71.36.9.in-addr.arpa.      IN  PTR   testuser.philg.benelux.ibm.com.
  684.     101.97.101.206.in-addr.arpa.  IN  PTR   www.lycos.com.
  685.     70.146.216.205.in-addr.arpa.  IN  PTR   www.yahoo.com.
  686.  
  687.   named.ca
  688.   ________
  689.  
  690.     ;
  691.     ; define parent(root) domain nameserver (Note trailing dot)
  692.     ;
  693.     in-addr.arpa.           99999999  IN  NS  ns01.ny.us.net.com.
  694.     ;
  695.     ; address of domain nameservers
  696.     ;
  697.     ns01.ny.us.net.com.     99999999  IN  A   165.87.194.244
  698.     ;
  699.  
  700.   RESOLV2 ON SOCKD SERVER
  701.   _______________________
  702.  
  703.     domain philg.benelux.ibm.com
  704.     nameserver 9.36.71.9
  705.  
  706.   RESOLV ON SOCKD SERVER
  707.   ______________________
  708.  
  709.     domain philg.benelux.ibm.com
  710.     nameserver 9.36.71.9
  711.  
  712.   RESOLV2 ON END-USER WORKSTATION
  713.   _______________________________
  714.  
  715.     domain philg.benelux.ibm.com
  716.     nameserver 9.36.71.9
  717.  
  718.   TEST CONFIGURATION
  719.   __________________
  720.  
  721.                      ----
  722.                 ----     ---
  723.             ----            ----
  724.         ----    Internet        --
  725.            ----                    -
  726.                ------ IBM IGN   --
  727.                     ---*-------
  728.                        *
  729.                        *
  730.                     *******                     testuser
  731.                      *   *  Modem              ----------
  732.                       * *   Dial-up            *Thinkpad*
  733.                        *                       ----*-----
  734.           * *          *                           *
  735.         *     *  ------*------    Ethernet         *9.36.71.10
  736.        * T-R   *** PS/VP     *---------------------*---
  737.         *     *  * bebd238   *9.36.71.9
  738.           * *    -------------
  739.              9.132.89.238
  740.      ibm.com                          philg.benelux.ibm.com
  741.      9.0.0.0                             9.36.71.0
  742.  
  743.   With a correct setup, it is possible to use Internal servers
  744.   (ibm.com)  without  dialing  from "testuser". If an external
  745.   server is used (by sample www.yahoo.com)  the  auto-dial  is
  746.   automaticcally used.
  747.  
  748.   The choice is done through "sockd.rte" configuration. By de-
  749.   fault  sockd  gives only access to the "local" subnet on the
  750.   LAN adapter (9.132.88.0).
  751.  
  752.  
  753.   PROXY  SUPPORT
  754.   ______________
  755.  
  756.     A  "proxy" socks server is implemented. To use it you need
  757.   to know the IP address of the next sockd for OS/2 server and
  758.   the subnets you can access through this remote sockd.
  759.  
  760.    From a LAN connected to Internet in "auto-dial" mode it  is
  761.   possible  to access servers located on an other LAN attached
  762.   to Internet through a sockd using a fixed IP address (mainly
  763.   with a leased line).
  764.  
  765.    You must "permit" the access on both  sockd  servers.  Only
  766.   the  dial-up  sockd has to define the "leased line attached"
  767.   sockd with a "proxy" statement.
  768.  
  769.  
  770.  
  771.   ARCHIVING SOCKD LOG FILES AND REPORTING
  772.   _______________________________________
  773.  
  774.     Sockd  can  now  archive  its log files. The setup is done
  775.   through the "profile" option of the main window  menu.  Four
  776.   parameters are saved in the third line of the sockd.pro file
  777.   in  the ETC directory.  The first parameter indicates if Yes
  778.   or No the option is selected.  The second parameter  is  "H"
  779.   for hours or "D" for days. The third gives the delay used to
  780.   close  the  sockd.log  file  and rename it to "sockdlog.XXX"
  781.   where XXX is a three digits number. The fourth indicates the
  782.   maximum number of archived files (+ the current sockd.log).
  783.  
  784.    The default is to keep seven files and to archive every  24
  785.   hours.   With this setup you can build a weekly report using
  786.   the sample REXX reporting program "sockdrep.cmd" (just  type
  787.   "sockdrep"  without  parm  in  the  directory  sockd is run-
  788.   ning)...
  789.  
  790.  
  791.   IF PROBLEMS
  792.   ___________
  793.  
  794.  
  795.   ⌐   The  DNS  kit  nameD  server  can block if the system is
  796.       fully  "socksified".    Don't  hesitate  to  rename  the
  797.       "socks.cfg"  file in the ETC directory when you are run-
  798.       ning sockD.
  799.  
  800.   ⌐   If your configuration is limited to one LAN adapter  and
  801.       one  dial  adapter,  it  is better to test sockd without
  802.       configuring it...  Use the view menu option to  see  the
  803.       config. After tests, check sockd.log ...
  804.  
  805.   ⌐   If  you  have really a problem to setup a name server on
  806.       the gateway station, define a "hosts"  file.  For  that,
  807.       when  you are testing your "sockdial.cmd" after the con-
  808.       nection and authentication are  successfully  completed,
  809.       use :
  810.         host www.yahoo.com
  811.       in  an OS/2 Window. You are able to get the IP addresses
  812.       of your favorite servers.  If you install a  "completed"
  813.       hosts  file  in the ETC directory of the end-user PC you
  814.       can test sockd with WebEx (socks V4) without  setting  a
  815.       name  server.   With a name server and its caching mech-
  816.       anism, you have access to any  server,  with  the  hosts
  817.       file access is limited...
  818.  
  819.   ⌐   To  support  socks  V5  DNS,  the  dial-up connection is
  820.       started automatically if the name  can  NOT  be  locally
  821.       traduced...  A  better  solution  is perhaps to define a
  822.       list of the "internal" domain names, and  to  start  the
  823.       connection  only  if  the  request is for another domain
  824.       name.  On the time being, sockd start the  dial-up  con-
  825.       nection  for  V5,  before  checking if the connection is
  826.       "permitted" except  if  the  DNS  name  can  be  locally
  827.       traduced.   With the current implementation:  - in socks
  828.       V4 the first session (to start the  dial-up  connection)
  829.       MUST be
  830.       to  a  "locally" defined DNS name (then sockd check if
  831.       the client has access
  832.       to this address before starting the connection).  - in
  833.       V5 DNS support, the first session  can  be  to  any  DNS
  834.       name, but if this
  835.       name  can  NOT  be  locally translatted, there a delay
  836.       (nearly 1 min. in my tests)
  837.       then the dial-up connection is  started  and  the  DNS
  838.       name translation request
  839.       is sent to the "external" name server.
  840.       The  "permission"  can be checked only after sockd re-
  841.       ceived the destination
  842.       IP address.
  843.  
  844.   ⌐   In    this    version    ,    only   the   flags   "811"
  845.       (<UP,POINTTOPOINT>) or "851" (<..,RUNNING>) are  consid-
  846.       ered  as  "good"  status (connection established) on the
  847.       dial-up adapter.   If the "auto-dial"  facility  doesn't
  848.       work for you, please check these flags with:
  849.       "ifconfig ppp0" (by sample)
  850.       Send a note to me and I'll add the required support...
  851.  
  852.   ⌐   With  current V4 applications like WebEx, the first ses-
  853.       sion must be done to a DNS name converted locally (named
  854.       or hosts file).  After the dial-up connection is  estab-
  855.       lished,  names  can  be translatted by the Internet pro-
  856.       vider name server, and cached in the local nameD.
  857.  
  858.   ⌐   Using WebEx through sockd, some  ".gif"  files  are  not
  859.       correctly received I am investigating why and how to im-
  860.       prove it.
  861.  
  862.     Any suggestion or question to Philippe Gillain (GILLAIN at
  863.     BRUVMIS1 or Philippe_Gillain@be.ibm.com)...
  864.  
  865.